GT.modifierInit.obj(
    {
        {
            mk = modifier_id['眩晕'],
            obtain = function(owner_unit, from_unit, modifier)
                if  owner_unit['眩晕']==true then
                    return
                end
                owner_unit['眩晕'] = true
                if owner_unit['眩晕sfx'] == nil then
                    owner_unit['眩晕sfx'] = GT.sfx.create_sfx_on_unit({
                        sfx_id = 100604,
                        unit = owner_unit,
                        socket = 'head',
                        duration = 9999
                    })
                end
                owner_unit:ban()
            end,
            loss = function(owner_unit, from_unit, modifier)
                owner_unit['眩晕'] = false
                owner_unit['眩晕sfx']:delete_sfx(true)
                owner_unit['眩晕sfx'] = nil
                owner_unit:lifted()
            end,
        },
        {
            mk = modifier_id['击飞'],
            obtain = function(owner_unit, from_unit, modifier)
                if  owner_unit['击飞']==true then
                    return
                end
                owner_unit['击飞'] = true
                owner_unit:ban()
            end,
            loss = function(owner_unit, from_unit, modifier)
                owner_unit['击飞'] = false
                owner_unit:lifted()
            end,
        },
        {
            mk = modifier_id['击退'],
            obtain = function(owner_unit, from_unit, modifier)
                if  owner_unit['击退'] then
                    return
                end
                owner_unit['击退'] = true
                owner_unit:ban()
            end,
            loss = function(owner_unit, from_unit, modifier)
                owner_unit['击退'] = false
                owner_unit:lifted()
            end,
        }
    }
)
